﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;

namespace pos_trab_3
{
    public class ProcessadorClassificacao
    {
        public List<Candidato> Classificar(List<Candidato> lista)
        {
            this.defineNotasFinais(lista);
            this.ordenaPorNotaFinalDesc(lista);
            return lista;
        }


        public virtual void defineNotasFinais(List<Candidato> lista)
        {
            foreach (Candidato candidato in lista)
            {
                candidato.CalcularNotaFinal();
            }
            
        }


        public virtual void ordenaPorNotaFinalDesc(List<Candidato> lista)
        {
            lista.Sort(new OrdenacaoPorNotaDecrescente());
        }

    }

}
